package com.yinhe.music.yhmusic.pay;

import com.tencent.mm.opensdk.modelpay.PayReq;
import com.yinhe.music.yhmusic.base.IBaseView;
import com.yinhe.music.yhmusic.model.PayResultInfo;

/**
 * PayActivity契约类
 */
public interface PayContract {
    interface IPayPresenter {
        /**
         * 请求支付信息
         *
         * @param payType     支付方式
         * @param productType 购买产品类型 song/snowgold/vip
         * @param product     产品id
         */
        void getPayInfo(String payType, String productType, String product);

        /**
         * 获取支付结果
         *
         * @param orderNo 订单id
         */
        void getPayResult(String orderNo);
    }

    interface IPayView extends IBaseView {
        /**
         * 发起微信支付请求
         *
         * @param payReq 支付请求类
         */
        void sendWechatPay(PayReq payReq);

        /**
         * 发起支付宝支付
         *
         * @param orderInfo 订单信息
         */
        void sendAliPay(String orderInfo);

        /**
         * 更新支付结果UI
         *
         * @param resultInfo 支付结果信息
         */
        void setPayResultUI(PayResultInfo resultInfo);
    }
}
